package com.th.supcom.pds.drugreturn.client.service;

import java.util.List;

import net.carefx.framework.container.client.exception.UiException;

import com.google.gwt.user.client.rpc.RemoteService;
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;
import com.th.supcom.pds.common.client.commom.PdsAuditPrescServiceFactory;
import com.th.supcom.pds.internal.client.model.PrescAndPatResultModel;
import com.th.supcom.pds.sortingdrug.client.model.PdsPrescDetailInfoModel;

/**
 * 门诊退药服务接口.
 * 
 * @author yzhang
 */
@RemoteServiceRelativePath (PdsAuditPrescServiceFactory.BASE_URL + "drugreturn.do")
public interface DrugReturnRpc extends RemoteService
{

    /** 公司版权信息. */
    public static final String copyright = "Copyright 2014, TH Supcom Corporation";

    /** 提交路径. */
    public static final String SCC_BRANCH = "$URL$";

    /** 提交日期. */
    public static final String SCC_LAST_MODIFICATION_DATE = "$Date$";

    /** 最终修改人员. */
    public static final String SCC_LAST_MODIFIER_NAME = "$Author$";

    /** 最终版本号. */
    public static final String SCC_REVISION = "$Revision$";

    /**
     * 退药申请通过
     * 
     * @param models
     * @throws UiException
     */
    public void drugReturnPass (List <PdsPrescDetailInfoModel> prescModels, List <PdsPrescDetailInfoModel> prescDetailModels, String operator) throws UiException;

    /**
     * 退药申请被拒绝
     * 
     * @param models
     * @throws UiException
     */
    public void drugReturnRefuse (List <PdsPrescDetailInfoModel> prescModels, List <PdsPrescDetailInfoModel> prescDetailModels, String operator) throws UiException;

    /**
     * 根据处方号查询处方以及处方明细信息
     * 
     * @param models
     * @return
     * @throws UiException
     */
    public PrescAndPatResultModel findPrescDetailByPrescList (List <String> prescNo, String performedBy) throws UiException;
}